gpsbabel.git
4 years agoMerge pull request #868 from GPSBabel/deldthrf
Robert Lipe [Sat, 26 Mar 2022 08:00:11 +0000 (03:00 -0500)]
Merge pull request #868 from GPSBabel/deldthrf

Delete destinator_itn destinator_poi destinator_trl easygps energympro enigma f90g flys ight fugawi from disuse.

4 years agoMerge branch 'master' into deldthrf
Robert Lipe [Sat, 26 Mar 2022 07:59:56 +0000 (02:59 -0500)]
Merge branch 'master' into deldthrf

4 years agoMerge pull request #873 from tsteven4/clazy-use-static-qregularexpression
Robert Lipe [Sat, 26 Mar 2022 07:57:35 +0000 (02:57 -0500)]
Merge pull request #873 from tsteven4/clazy-use-static-qregularexpression

use static const qregularexpressions where possible

4 years agoMerge pull request #869 from GPSBabel/delg
Robert Lipe [Sat, 26 Mar 2022 07:56:39 +0000 (02:56 -0500)]
Merge pull request #869 from GPSBabel/delg

Delete geonet googledir gnav_trl ggv_ovl ggv_bin ggv_log glogbook gnav_trl hiketech

4 years agoMerge pull request #865 from GPSBabel/nuke
Robert Lipe [Sat, 26 Mar 2022 07:56:08 +0000 (02:56 -0500)]
Merge pull request #865 from GPSBabel/nuke

Delete Delorme GPL format for disuse.

4 years agouse cmake to run clazy.
tsteven4 [Sat, 19 Mar 2022 20:34:56 +0000 (14:34 -0600)]
use cmake to run clazy.

this avoids warnings in Qt headers.

we also build both the CLI and GUI.

4 years agouse static const QRegularExpressions in GUI.
tsteven4 [Sat, 19 Mar 2022 18:38:38 +0000 (12:38 -0600)]
use static const QRegularExpressions in GUI.

4 years agouse static const qregularexpressions where possible
tsteven4 [Sat, 19 Mar 2022 14:01:01 +0000 (14:01 +0000)]
use static const qregularexpressions where possible

4 years agoupdate to Qt 6.2.4 (#872)
tsteven4 [Sat, 19 Mar 2022 12:21:54 +0000 (06:21 -0600)]
update to Qt 6.2.4 (#872)

4 years agoUpdate Russian translation (#864)
OlesyaGerasimenko [Fri, 18 Mar 2022 14:33:30 +0000 (17:33 +0300)]
Update Russian translation (#864)

* Update Russian translation

* Update Russian translation

4 years agofix cross-origin resource sharing issues with map preview. (#871)
tsteven4 [Fri, 18 Mar 2022 12:31:21 +0000 (06:31 -0600)]
fix cross-origin resource sharing issues with map preview. (#871)

* fix cross-origin resource sharing issues with map preview.

This became critical in Qt 6.2.4 when using the file scheme
with gmapbase.html.

* Ensure QWebEngineSettings are set before page load.

4 years agoCreate SECURITY.md
Robert Lipe [Thu, 17 Mar 2022 05:31:30 +0000 (00:31 -0500)]
Create SECURITY.md

4 years agoRemove delgpl from CMakeFile
Robert Lipe [Thu, 17 Mar 2022 04:56:37 +0000 (23:56 -0500)]
Remove delgpl from CMakeFile

4 years agoDelete tests from cmake. Fix tool for next time.
Robert Lipe [Thu, 17 Mar 2022 04:46:44 +0000 (23:46 -0500)]
Delete tests from cmake. Fix tool for next time.

4 years agoDelete formats from CMakeLists, too.
Robert Lipe [Thu, 17 Mar 2022 04:41:11 +0000 (23:41 -0500)]
Delete formats from CMakeLists, too.

4 years agoRemove destinator, engergypro, f90, crumbs from CMakefile.
Robert Lipe [Thu, 17 Mar 2022 04:38:23 +0000 (23:38 -0500)]
Remove destinator, engergypro, f90, crumbs from CMakefile.

4 years agoKill ggv_bin, ggv_ovl more dead.
Robert Lipe [Thu, 17 Mar 2022 03:44:20 +0000 (22:44 -0500)]
Kill ggv_bin, ggv_ovl more dead.

4 years agoDelete geo format.
Robert Lipe [Thu, 17 Mar 2022 03:31:10 +0000 (22:31 -0500)]
Delete geo format.

4 years agoFix doc references left for EasyGPS.
Robert Lipe [Thu, 17 Mar 2022 03:26:48 +0000 (22:26 -0500)]
Fix doc references left for EasyGPS.

4 years agoPick up dropped commit in nuke branch to drop gpl from vecs.
Robert Lipe [Thu, 17 Mar 2022 03:08:49 +0000 (22:08 -0500)]
Pick up dropped commit in nuke branch to drop gpl from vecs.

4 years agoRemove entries from gpsbabel.qrc
Robert Lipe [Thu, 17 Mar 2022 02:14:16 +0000 (21:14 -0500)]
Remove entries from gpsbabel.qrc

4 years agoRemove googledir, geonet
Robert Lipe [Thu, 17 Mar 2022 02:11:09 +0000 (21:11 -0500)]
Remove googledir, geonet

4 years agoTake out ggv_bin, ggv_ovl, gnav_trl
Robert Lipe [Thu, 17 Mar 2022 02:04:55 +0000 (21:04 -0500)]
Take out ggv_bin, ggv_ovl, gnav_trl

4 years agoGlogbook, Gnav_trl
Robert Lipe [Thu, 17 Mar 2022 02:02:15 +0000 (21:02 -0500)]
Glogbook, Gnav_trl

4 years agoDelete hiketech,
Robert Lipe [Thu, 17 Mar 2022 01:59:41 +0000 (20:59 -0500)]
Delete hiketech,

4 years agoDelete destinator_itn destinator_poi destinator_trl easygps energympro enigma f90g...
Robert Lipe [Thu, 17 Mar 2022 01:55:19 +0000 (20:55 -0500)]
Delete destinator_itn destinator_poi destinator_trl easygps energympro enigma f90g flys ight fugawi from disuse.

4 years agoDelete Delorme GPL for disuse.
Robert Lipe [Thu, 17 Mar 2022 00:05:35 +0000 (19:05 -0500)]
Delete Delorme GPL for disuse.

4 years agoNits (#863)
tsteven4 [Mon, 14 Mar 2022 13:22:11 +0000 (07:22 -0600)]
Nits (#863)

* delete crumbs from deprecated formats.

* whitespace

4 years agoretire strsub, gstrsub. (#862)
tsteven4 [Fri, 11 Mar 2022 20:52:01 +0000 (13:52 -0700)]
retire strsub, gstrsub. (#862)

4 years agomisc improvements. (#861)
tsteven4 [Wed, 9 Mar 2022 16:34:26 +0000 (09:34 -0700)]
misc improvements. (#861)

* misc improvements.

fix memory leak in nmea reader.
eliminate extra string conversion using xml_parse_time.
use local QByteArray instead of xstrdup.
convert human_to_dec interface to QString.

* use strtod to track converted len in human_to_dec.

* enhance humantodec test.

4 years agoUse PImpl idiom to hide Format and Filter headers from users of Vecs, FilterVecs...
tsteven4 [Tue, 1 Mar 2022 13:40:32 +0000 (06:40 -0700)]
Use PImpl idiom to hide Format and Filter headers from users of Vecs, FilterVecs. (#854)

* use pimpl to hide vec implementation of formats.

* use PIMPL for filter_vecs.

* sort vecs and filter_vecs include files.

* workaround memory leak issues with pimpl vecs, filter_vecs.

with some compilers sanitize address and valgrind reported errors.
The number of errors varied with compiler/platform.
Valgrind and sanitize address found different errors as well.
MacOS with clang 13 ran error free.
Linux with gcc9 and clang 10 showed multiple errors.
The errors detected were related to the destruction of the Format
and Filter instances.

* move ctors/dtors back to h files.

* catch nuke_format up with vecs.

4 years agoconvert gdb to Format class (#850)
tsteven4 [Sat, 26 Feb 2022 16:04:22 +0000 (09:04 -0700)]
convert gdb to Format class (#850)

* convert gdb to Format class.

* const member funcs

4 years agofix Qt6 deprecation warning with QVariant::canConvert. (#860)
tsteven4 [Sat, 26 Feb 2022 14:34:13 +0000 (07:34 -0700)]
fix Qt6 deprecation warning with QVariant::canConvert. (#860)

4 years agosilence MSVC with definitions and options (#859)
tsteven4 [Sat, 26 Feb 2022 00:03:10 +0000 (17:03 -0700)]
silence MSVC with definitions and options (#859)

* deal with MSVC CRT security warnings in a consistent manner.

* correct cmake targets

* turn off some MSVC warnings for shapelib, zlib with cmake.

* fix msvc C4100 warning handling.

There was interference between our attempt to turn off the warning
with -wd4100 and win32-msvc mkspec changing the level of this
warning with -w34100.

4 years agofix various printf related issues. (#858)
tsteven4 [Fri, 25 Feb 2022 13:45:31 +0000 (06:45 -0700)]
fix various printf related issues. (#858)

* dont use posix printf argument reordering.

it isn't supported by MSVC printf, it requires _printf_p.

* fix lowranceusr printf errors on MSVC.

There are still multiple other errors with Qt6 on other platforms
related to the Qt5 -> Qt6 transition with sizes.

* fix size related printf issues in lowranceusr.

note the type of these variables is different between Qt5 and Qt6.

4 years agodelete unused field from legacy format ff_vecs_t (#857)
tsteven4 [Thu, 24 Feb 2022 13:04:02 +0000 (06:04 -0700)]
delete unused field from legacy format ff_vecs_t (#857)

4 years agouse Qt for os independent environmental variable access. (#856)
tsteven4 [Thu, 24 Feb 2022 13:02:08 +0000 (06:02 -0700)]
use Qt for os independent environmental variable access. (#856)

4 years agoMerge pull request #855 from GPSBabel/gpi_dbg
Robert Lipe [Thu, 24 Feb 2022 04:36:49 +0000 (22:36 -0600)]
Merge pull request #855 from GPSBabel/gpi_dbg

Move compile-time tests for debug message to runtime tests at -D3 or more.

4 years agoRemove duplicate definition and undefinition.
Robert Lipe [Thu, 24 Feb 2022 04:35:10 +0000 (22:35 -0600)]
Remove duplicate definition and undefinition.

4 years agoMove compile-time tests for debug message to runtime tests at -D3 or more.
Robert Lipe [Tue, 22 Feb 2022 23:43:53 +0000 (17:43 -0600)]
Move compile-time tests for debug message to runtime tests at -D3 or more.

4 years agofix garmin_gpi debug code. (#853)
tsteven4 [Mon, 21 Feb 2022 14:53:36 +0000 (07:53 -0700)]
fix garmin_gpi debug code. (#853)

https://github.com/GPSBabel/gpsbabel/pull/833/files introduced a bug with unique_ptr.

4 years agouse precompiled headers to speed up compile time (#851)
tsteven4 [Fri, 18 Feb 2022 18:04:01 +0000 (11:04 -0700)]
use precompiled headers to speed up compile time (#851)

* speed up compiles with precompiled headers.

* workaround QTBUG with precompiled headers and clang.

* avoid including QtCore.

* add ability to turn off precompiled headers.

4 years agofix include cycle in new garmin_gpi Format. (#852)
tsteven4 [Fri, 18 Feb 2022 17:25:44 +0000 (10:25 -0700)]
fix include cycle in new garmin_gpi Format. (#852)

4 years agoeliminate unnecessary string conversions.
tsteven4 [Sun, 13 Feb 2022 20:05:56 +0000 (13:05 -0700)]
eliminate unnecessary string conversions.

toString().to* is suspicious, QStringRef and QStringView probably
can be converted directly to *.

4 years agoconvert garmin gpi to Format class (#849)
tsteven4 [Mon, 7 Feb 2022 14:10:14 +0000 (07:10 -0700)]
convert garmin gpi to Format class (#849)

* convert garmin_gpi to Format class

* const member funcs

* flush out includes

4 years agoUse smart pointers over xmalloc and manual life management (#833)
GPSBabel [Sun, 6 Feb 2022 22:24:56 +0000 (16:24 -0600)]
Use smart pointers over xmalloc and manual life management (#833)

* Use reference counted pointers instead of managing our own.
Fixes a leak when using debug printing.

4 years agoupdate Qt 6 builds to 6.2.3 (#848)
tsteven4 [Tue, 1 Feb 2022 13:22:58 +0000 (06:22 -0700)]
update Qt 6 builds to 6.2.3 (#848)

4 years agoconvert text to Format class (#847)
tsteven4 [Sun, 30 Jan 2022 16:19:16 +0000 (09:19 -0700)]
convert text to Format class (#847)

4 years agoconvert humminbird to Format class. (#840)
tsteven4 [Sun, 30 Jan 2022 14:46:32 +0000 (07:46 -0700)]
convert humminbird to Format class. (#840)

* convert humminbird to Format class.

* const member functions, constexpr

* sorting members, easing off on forced init of auto variables.

* iwyu

4 years agoconvert f90g_track to Format class. (#844)
tsteven4 [Sun, 30 Jan 2022 13:42:50 +0000 (06:42 -0700)]
convert f90g_track to Format class. (#844)

4 years agoconvert tef xml to Format class (#842)
tsteven4 [Sat, 29 Jan 2022 22:19:10 +0000 (15:19 -0700)]
convert tef xml to Format class (#842)

* convert tef_xml to Format class.

* fix mem leak

* cap comment.

4 years agoconvert Mapbar track to Format class (#841)
tsteven4 [Sat, 29 Jan 2022 21:45:30 +0000 (14:45 -0700)]
convert Mapbar track to Format class (#841)

* convert mapbar_track to Format class.

* const member funcs

4 years agoconvert mapfactor to Format class (#843)
tsteven4 [Sat, 29 Jan 2022 21:09:48 +0000 (14:09 -0700)]
convert mapfactor to Format class (#843)

* convert mapfactor to Format class.

* const memb funcs.

4 years agomake kml skip and ignore list constexpr. (#846)
tsteven4 [Sat, 29 Jan 2022 20:53:46 +0000 (13:53 -0700)]
make kml skip and ignore list constexpr. (#846)

4 years agoConvert gtrnctr to Format class (#839)
tsteven4 [Sat, 29 Jan 2022 20:28:30 +0000 (13:28 -0700)]
Convert gtrnctr to Format class (#839)

* Convert gtrnctr to Format class

* fix includes

* make ingorelist const

4 years agoConvert gtrnctr to Format class (#839)
tsteven4 [Sat, 29 Jan 2022 20:24:46 +0000 (13:24 -0700)]
Convert gtrnctr to Format class (#839)

* Convert gtrnctr to Format class

* fix includes

* make ingorelist const

4 years agoallow ignore list and skip list to be const. (#845)
tsteven4 [Sat, 29 Jan 2022 19:51:59 +0000 (12:51 -0700)]
allow ignore list and skip list to be const. (#845)

4 years agoconvert exif format to Format class (#838)
tsteven4 [Sat, 29 Jan 2022 17:04:51 +0000 (10:04 -0700)]
convert exif format to Format class (#838)

* convert exif to Format class.

* exif member functions static, const.

* default initialize exif data members.

* move constant definition

4 years agoconvert html to Format class. (#837)
tsteven4 [Sat, 29 Jan 2022 16:31:01 +0000 (09:31 -0700)]
convert html to Format class. (#837)

* convert html to Format class.

* add default init.

* capability comment

4 years agoconvert teletype to Format class. (#836)
tsteven4 [Sat, 29 Jan 2022 15:59:14 +0000 (08:59 -0700)]
convert teletype to Format class. (#836)

* convert teletype to Format class.

* add default init.

4 years agoWintec tes format (#835)
tsteven4 [Sat, 29 Jan 2022 15:27:03 +0000 (08:27 -0700)]
Wintec tes format (#835)

* convert wintec_tes for Format class.

* add new h file.

* add default init.

4 years agomove skytraq to Format class (#834)
tsteven4 [Sat, 29 Jan 2022 14:50:12 +0000 (07:50 -0700)]
move skytraq to Format class (#834)

* convert skytraq to Format class.

* make skytraq member functions const, use constexpr.

* skytraq format class fiddling

* more skytraq fiddling.

* whitespace cleanup

* rename skytraq base functions.

* fix rename, includes.

* capability comments.

4 years agoFix ODR violations discovered when using -flto. (#824)
tsteven4 [Wed, 26 Jan 2022 00:06:49 +0000 (17:06 -0700)]
Fix ODR violations discovered when using -flto. (#824)

The fedora build shows these:
skytraq.cc:666:8: warning: type 'struct read_state' violates the C++ One Definition Rule [-Wodr]
wbt-200.cc:127:8: note: a different type is defined in another translation unit
brauniger_iq.cc:30:6: warning: type 'state_t' violates the C++ One Definition Rule [-Wodr]
igc.cc:150:6: note: an enum with different value name is defined in another translation unit

However, even with link time optimization I was unable to observe a problem, i.e. testo passes.

There is a relevant note in https://en.cppreference.com/w/cpp/language/definition, see the note
about using unnamed namespaces to resolve this issue.

Also note the use of unnamed namespaces is not recommended in header files,
https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL59-CPP.+Do+not+define+an+unnamed+namespace+in+a+header+file

4 years agocorrect color palette issues in gpi writer. (#828)
tsteven4 [Wed, 26 Jan 2022 00:06:35 +0000 (17:06 -0700)]
correct color palette issues in gpi writer. (#828)

4 years agosimpify unix world conditionals in qmake files. (#831)
tsteven4 [Wed, 26 Jan 2022 00:06:12 +0000 (17:06 -0700)]
simpify unix world conditionals in qmake files. (#831)

4 years agoReplace which by POSIX command -v (#829)
Jochen Sprickerhof [Mon, 24 Jan 2022 14:33:01 +0000 (15:33 +0100)]
Replace which by POSIX command -v (#829)

4 years agoa little lighter swing of the ax. (#826)
tsteven4 [Sat, 22 Jan 2022 21:47:44 +0000 (14:47 -0700)]
a little lighter swing of the ax. (#826)

COPYING.txt is used by packaging.

4 years agofix cmake status messages (#825)
tsteven4 [Sat, 22 Jan 2022 21:19:02 +0000 (14:19 -0700)]
fix cmake status messages (#825)

4 years agorc1 for 1.8.0 release (#814)
tsteven4 [Wed, 19 Jan 2022 21:08:42 +0000 (14:08 -0700)]
rc1 for 1.8.0 release (#814)

* rc1 for 1.8.0 release

* update gui about copyright.

* update translations again.

4 years agoremove traces of autotools. (#822)
tsteven4 [Wed, 19 Jan 2022 20:31:26 +0000 (13:31 -0700)]
remove traces of autotools. (#822)

4 years agofix donate dialog. (#821)
tsteven4 [Wed, 19 Jan 2022 20:10:08 +0000 (13:10 -0700)]
fix donate dialog. (#821)

enable hypertext link.
fix overelapping text on linux, windows.
fix "never show this message again".
fix donate hypertext link target.

4 years agofinish killing GUI charset handling (#819)
tsteven4 [Wed, 19 Jan 2022 19:23:27 +0000 (12:23 -0700)]
finish killing GUI charset handling (#819)

* finish killing gui charset handling.

* more char set dead code cleaning

* even more dead code buried.

4 years agominor cleanups. (#820)
tsteven4 [Wed, 19 Jan 2022 19:18:44 +0000 (12:18 -0700)]
minor cleanups. (#820)

empty statements, unreachable code, member funct can be const.

4 years agocapture git hash on github action builds. (#816)
tsteven4 [Tue, 11 Jan 2022 15:07:24 +0000 (08:07 -0700)]
capture git hash on github action builds. (#816)

* capture git hash on github action builds.

* modernize version sha display

* delete stray space

4 years agotweak cmake org target. (#815)
tsteven4 [Thu, 6 Jan 2022 22:40:29 +0000 (15:40 -0700)]
tweak cmake org target. (#815)

4 years agoMove destinator to QDateTime from ctime (#796)
Robert Lipe [Thu, 6 Jan 2022 03:31:34 +0000 (22:31 -0500)]
Move destinator to QDateTime from ctime (#796)

* Move destinator from ctime to QDateTime.

This feels a bit like rearranging Titanic chairs, but I needed to reduce
callers of strptime. This is another format I think we've rewritten a
couple of times without evidence of users. Most of the traffic in the last
ten years has been complaints of it not working

Destinator, consider yourself warned. You're on the death watch...

4 years agoRemove trailing space in xmldoc/.
Robert Lipe [Thu, 6 Jan 2022 02:38:56 +0000 (20:38 -0600)]
Remove trailing space in xmldoc/.
 sed --in-place 's/[[:space:]]\+$//' $*

 This is only the xmldoc part of 9935496f5c8c772ea11785ff489768dbb2de5d4f

4 years agoFix build on Catalina, HTML doc formatting improvements (#759)
GPSBabel [Thu, 6 Jan 2022 02:20:05 +0000 (20:20 -0600)]
Fix build on Catalina, HTML doc formatting improvements (#759)

* PDF maker: format screen and input same. Shrink padding slightly.

4 years agoonly support changing gpsbabel.org location at build generation time. (#813)
tsteven4 [Thu, 6 Jan 2022 00:36:02 +0000 (17:36 -0700)]
only support changing gpsbabel.org location at build generation time. (#813)

4 years agoadd dg100 heartbeat. (#812)
tsteven4 [Wed, 5 Jan 2022 13:13:29 +0000 (06:13 -0700)]
add dg100 heartbeat. (#812)

4 years agoadd support for cmake build options (#809)
tsteven4 [Tue, 4 Jan 2022 20:19:56 +0000 (13:19 -0700)]
add support for cmake build options (#809)

* add initial support for cmake build options.

including basic library configuration.
Unlike our qmake build it generates and links with static libraries if
we are using our internally supplied copies.  The configuration options
are not as sophisticated as in our qmake build.  The configuration of
zlib will likely be acceptable as cmake provides support via findZLIB.
The configuration of shapelib and libusb-1.0 likely will likely need to
be enhanced.

* fix typo

* mimic qmake library searches.

too much energy went into verification with packagers that the
qmake options were sufficient for their needs.

* tweak library searches

4 years agoadd intial support for CTest (#808)
tsteven4 [Mon, 3 Jan 2022 15:57:07 +0000 (08:57 -0700)]
add intial support for CTest (#808)

* add CTest tests.

* add note about improvements for ctest.

* running xmlwf and utf8bom tests is appropriate for single tests.

4 years agouse hierarchy with cmake. (#807)
tsteven4 [Sun, 2 Jan 2022 23:51:03 +0000 (16:51 -0700)]
use hierarchy with cmake. (#807)

* use hierarchy with cmake.

* adjust cmake test script for hierarchy.

the default target with cmake builds both the CLI and the GUI.
alternatively, "cmake --build . --target gpsbabel" to build just the
CLI or "cmake --build . --target GPSBabelFE|gpsbabelfe to build just
the GUI.

* detect attempts to generate a build system from a subdirectory.

* fix shellcheck issues.

4 years agomake gbversion.h, setup.iss generated files. (#806)
tsteven4 [Sun, 2 Jan 2022 19:22:11 +0000 (12:22 -0700)]
make gbversion.h, setup.iss generated files. (#806)

* make gbversion.h, setup.iss generated files.

add cmake documentation targets.

* work on check.

* simplify parameter passing to test scripts.

* cmake test work.

run vtesto in parallel.
fix valgrind decision making in testo.
fix test for gpsbabel executable with blanks in path.

* update vtesto for cmake.

* simplify option passing for testo.

* simplify valgrind detection in testo.

* fix testo bug.

* add ubuntu cmake build.

* fix workflow

* align gui pro and CMakeLists.

and use target properties

4 years agofix bad merge in mtk_logger. (#805)
tsteven4 [Thu, 30 Dec 2021 01:35:18 +0000 (18:35 -0700)]
fix bad merge in mtk_logger. (#805)

1. Jan 01, 2017 269c55eb5 Robert fixes ftruncate issue.
2. Jan 23, 2017 604178aa8 HarelM fixes same a different way.
3. Jan 25, 2017 8456d1d21 Robert merges resulting in duplicate fixes.

I am backing out HarelM's fix.

4 years agoEliminate internal_styles.cc completely (#804)
tsteven4 [Wed, 29 Dec 2021 14:48:33 +0000 (07:48 -0700)]
Eliminate internal_styles.cc completely (#804)

* Eliminate internal_styles.cc entirely.

* add missing qrc file.

* fix resource compilation with ninja.

* fix potential detach.

* kill empty statement

* update qrc file formatting with QtCreator resource editor.

4 years agomigrate from directory level cmake commands to target commands. (#802)
tsteven4 [Mon, 27 Dec 2021 13:36:27 +0000 (06:36 -0700)]
migrate from directory level cmake commands to target commands. (#802)

* migrate from directory level cmake commands to target commands.

fix a few bugs with our CMakeLists:

set WIN32 for gui target.  remove _CONSOLE, it's obsolete.

when undefining UNICODE, also undefine _UNICODE.  it's not clear to
me we have a sensitivity to UNICODE/_UNICODE.

take optimization flags out of CMakeLists, rely on CMAKE_BUILD_TYPE
to select appropriate flags.

don't force ZLIB_INHIBITED to be undefined on windows.

add cmake support for some of our configuration options:
disable-mappreview, embed_map, embed_translations.

* fix duplicated code in gui/CMakeLists.txt

* spelling fix for INSTALL.

4 years agoSpelling fix in doc.
Robert Lipe [Sun, 26 Dec 2021 05:10:47 +0000 (00:10 -0500)]
Spelling fix in doc.

4 years agoMerge branch 'master' of https://github.com/gpsbabel/gpsbabel
Robert Lipe [Sun, 26 Dec 2021 05:08:26 +0000 (00:08 -0500)]
Merge branch 'master' of https://github.com/gpsbabel/gpsbabel

4 years agoSpelling fix in interpolate: positve -> positive
Robert Lipe [Sun, 26 Dec 2021 05:07:49 +0000 (00:07 -0500)]
Spelling fix in interpolate: positve -> positive

4 years agotake out some trash. (#799)
tsteven4 [Fri, 17 Dec 2021 21:42:11 +0000 (14:42 -0700)]
take out some trash. (#799)

old configure scripts.
mingw stuff.

4 years agoremove misleading, dangerous and unneeded redefinitions (#798)
tsteven4 [Thu, 16 Dec 2021 23:15:18 +0000 (16:15 -0700)]
remove misleading, dangerous and unneeded redefinitions (#798)

for snprintf, vsnprintf.

delete an unneeded MSVC compiler pragma.

4 years agoretire is_fatal for better static analysis (#797)
tsteven4 [Thu, 16 Dec 2021 22:00:12 +0000 (15:00 -0700)]
retire is_fatal for better static analysis (#797)

* join is_fatal lines in prep for transformation.

1,$g/is_fatal.*[^;]$/j

* replace is_fatal with if() fatal().

this allows better static analysis.

sed -i '1,$s/^\( *\)is_fatal *( *\(.*\), *MYNAME\([^;]*\);$/\1if (\2) {\n\1  fatal(MYNAME\3;\n\1}/' $file
sed -i '1,$s/^\( *\)is_fatal *( *\(.*\), *"\([^;]*\);$/\1if (\2) {\n\1  fatal("\3;\n\1}/' $file

* manual delete extra parenthesis.

4 years agoPossible unterminated string in humminbird (#794)
GPSBabel [Thu, 16 Dec 2021 04:48:03 +0000 (23:48 -0500)]
Possible unterminated string in humminbird (#794)

Leave space for null terminator when copying string into fixed-size buffer.

4 years agoDeprecate navicache (#793)
Robert Lipe [Thu, 16 Dec 2021 03:22:37 +0000 (22:22 -0500)]
Deprecate navicache (#793)

* Deprecate navicache.

4 years agouse streams for garmin_fit debug messages. (#795)
tsteven4 [Wed, 15 Dec 2021 23:56:05 +0000 (16:56 -0700)]
use streams for garmin_fit debug messages. (#795)

* use streams for garmin_fit debug messages.

This eliminates the Qt 6 warnings related to the change in types
for container sizes and the format specifier.

* retire debug_print()

* make logging debug single arg ctors explicit

4 years agoretire some csv char based routines. (#790)
tsteven4 [Mon, 13 Dec 2021 16:27:55 +0000 (09:27 -0700)]
retire some csv char based routines. (#790)

* retire some csv char based routines.

The last csv_lineparse user, garmin_txt, is converted to csv_linesplit.

xcsv_parse_val converted to use csv_stringtrim(QString,QString,int),
eliminating the other overloads.

xcsv_parse_style_line parsing of FIELD_DELIMITER, FIELD_ENCLOSER,
RECORD_DELIMITER and BADCHARS updated to use the above overload of
csv_stringtrim.  FIELD_DELIMITER, FIELD_ENCLOSER and RECORD_DELIMITER
changed to trim, with a double quote enclosure,  before character substitution.
There was a subtle bug in csvs_stringtrim(char, char, int).  When trimming
a source that was all white space the first white space character would
be retained, while others would be trimmed.  This did occur with CRNEWLINE,
but the bug allowed other substitutions to work, e.g. SPACE, NEWLINE, TAB, CR.

A small bug in csv_stringclean was fixed.  If the to_nuke was empty an invalid
regular expression was created.

* save a few string conversions.

* and a few more conversions saved.

* review comments incorporated in garmin_txt reader.

* fix minor bug accumulating badchars.

4 years agofix xcsv parse_style formatting. (#789)
tsteven4 [Sat, 11 Dec 2021 19:13:54 +0000 (12:13 -0700)]
fix xcsv parse_style formatting. (#789)

the blank line between the else and the if confused astyle.

4 years agosupport qt6 with cmake in windows build script. (#788)
tsteven4 [Fri, 10 Dec 2021 19:42:50 +0000 (12:42 -0700)]
support qt6 with cmake in windows build script. (#788)

4 years agoorganize source files in GPSBabel.pro, CMakeLists.text` (#787)
tsteven4 [Fri, 10 Dec 2021 17:26:36 +0000 (10:26 -0700)]
organize source files in GPSBabel.pro, CMakeLists.text` (#787)

* organize files in GPSBabel.pro and CMakeLists.tst

This makes it easier to compare the two, and easier to see what
changed when nuking things.

* fix for lack of continuation line

* update nuke_format for sources on their own lines.

delete MSVC project and solution files.  The project files should
be generated with "qmake -tp vc GPSBabel.pro".  MSVC will create
the solution file if needed.